using System;
using System.ServiceModel;

namespace Wojna.ServiceContracts
{
    [ServiceContract(Namespace = "http://Wojna.ServiceContracts/2007/11", Name = "IPlayCallback", SessionMode = SessionMode.Required)]
    public interface IPlayCallback
    {
        [OperationContract(IsTerminating = false, IsInitiating = false, IsOneWay = true, AsyncPattern = false, Action = "NotifyPlayerJoinedGame")]
        void NotifyPlayerJoinedGame(Wojna.ServiceContracts.NotifyPlayerJoinedGameRequest request);
        [OperationContract(IsTerminating = false, IsInitiating = false, IsOneWay = true, AsyncPattern = false, Action = "NotifyPlayerLeftGame")]
        void NotifyPlayerLeftGame(System.String request);
        [OperationContract(IsTerminating = false, IsInitiating = false, IsOneWay = true, AsyncPattern = false, Action = "NotifyWhoWon")]
        void NotifyWhoWon(System.String request);
        [OperationContract(IsTerminating=false, IsInitiating=false, IsOneWay=true, AsyncPattern=false, Action="NotifyWhatHappend")]
        void NotifyWhatHappend(Wojna.DataContracts.Karta kartaPolozona);
    }
}
